package com.wyh.service.appservice;

import com.wyh.domain.dto.groupfour.threemeterDTO.GetThreeMeterListDTO;
import com.wyh.domain.dto.groupfour.threemeterDTO.MeterreadingDTO;
import com.wyh.domain.dto.groupfour.threemeterDTO.ThreeMeterDetailDTO;
import com.wyh.domain.dto.groupfour.threemeterDTO.ThreemeterLikeDTO;
import com.wyh.domain.vo.gruopfour.threemeterVO.Development;
import com.wyh.domain.vo.gruopfour.threemeterVO.PageResult;
import com.wyh.domain.vo.gruopfour.threemeterVO.ThreeMeterDetailVO;
import com.wyh.domain.vo.gruopfour.threemeterVO.ThreeMeterTotalVO;

import java.util.List;

/**
 * @author : 是你
 * @since : 2024/6/4 下午3:58
 */
public interface ThreemeterService {

    /**
     * 获取所有的三表
     * @param getThreeMeterListDTO 参数
     * @return 列表
     */
    PageResult<ThreeMeterTotalVO> getThreeMeter(GetThreeMeterListDTO getThreeMeterListDTO);

    /**
     * 获取所有三表详细
     * @param threeMeterDetailDTO 参数
     * @return 列表
     */
    PageResult<ThreeMeterDetailVO> threeMeter(ThreeMeterDetailDTO threeMeterDetailDTO);

    /**
     * 获取三表详细
     * @param threemeterid 具体表的id
     * @return 详细
     */
    ThreeMeterDetailVO threeMeterDetail(Integer threemeterid);

    /**
     * 抄表
     * @param meterreadingDTO 参数
     * @return 结果
     */
    int meterreading(MeterreadingDTO meterreadingDTO);

    /**
     * 撤销抄表
     * @param threeMeterReadingId 抄表表的id
     * @return 结果
     */
    int revokemeterreading(Integer threeMeterReadingId, Integer developmentid,Integer chargingid);

    PageResult<ThreeMeterDetailVO> like(ThreemeterLikeDTO threemeterLikeDTO);

    List<Development> screen();
}
